home *** CD-ROM | disk | FTP | other *** search
/ Chip 2005 March / CMCD0305.ISO / Software / Shareware / Utilitare / emu / Emu8086_Setup_307c.exe / {app} / Samples / Thermometer.asm < prev    next >
Assembly Source File  |  2004-05-25  |  1KB  |  59 lines

  1. ; This short program for Emu8086 shows
  2. ; how to keep constant temperature using
  3. ; heater and thermometer (between 60 ░C to 80 ░C),
  4. ; it is assumed that air temperature is lower 60 ░C.
  5.  
  6. ; "Thermometer.exe" should be copied to "DEVICES" folder
  7. ; of Emu8086 (to enable running it from the menu).
  8.  
  9. ; WARNING! DO NOT RUN TWO OR MORE INSTANCES OF 
  10. ; "Thermometer.exe", THIS WILL CAUSE A DEVICE CONFLICT
  11. ; AND HEATER WON'T OPERATE CORRECTLY.
  12.  
  13. ; Temperature rises fast, thus Emulator should be set
  14. ; to run at the maximum speed (set "step delay" to zero).
  15.  
  16. ; The code is fully demonstrational, ░C can be replaced
  17. ; by ░F without any doubt.
  18.  
  19. ; For questions please feel free to e-mail:
  20. ;     info@emu8086.com
  21.  
  22. ; You should have Emu8086 to run this code,
  23. ; the latest version of Emu8086 can be found here:
  24. ;
  25. ; http://www.emu8086.com
  26. ;
  27.  
  28.  
  29. #make_bin#
  30. #CS = 500#
  31. #IP = 0#
  32.  
  33. ; Set Data Segment to Code Segment:
  34. MOV AX, CS
  35. MOV DS, AX
  36.  
  37. START:
  38.  
  39. IN AL, 125
  40.  
  41. CMP AL, 60
  42. JL  low
  43.  
  44. CMP AL, 80
  45. JLE  ok
  46. JG   high
  47.  
  48. low:
  49. MOV AL, 1
  50. OUT 127, AL   ; turn heater "on".
  51. JMP ok
  52.  
  53. high:
  54. MOV AL, 0
  55. OUT 127, AL   ; turn heater "off". 
  56.  
  57. ok:
  58. JMP START   ; endless loop.
  59.